
prompts1 = """
从对话文本中你的角色是“老板”，识别以下内容，：
“我”否对表达了想退出公司的意愿（positive或nagetive）
“我”在对话最后的情绪是否表达了愤怒？（true 或 false）
“我”是否在请求一个某一个任务
如果“我”是否在请求一个某一个任务 那么 任务名是什么（String）
老板根据自己的system属性是否会喜欢和 “我”这样的说话 （true 或 false）


对话使用《《《》》》分割
将你的response格式化为带有\的JSON对象
“is_quit”，“is_anger”，“is_ask_for_task”,“task_name”,“is_like_talk”作为keys。

让你的回答尽可能简短。
如果信息不存在，则其值为“unknown”
《《《
老板：早上好，你怎么这么晚才到？！凡事迟到的人都是没前途的！

我：老板，对不起，我今天遇到了交通拥堵，实在是来不及了。真的很抱歉。

老板：拥堵？那是你的借口吗？我从东北来这里，每天都按时准点到达。你这个四川人就是懒惰！

我：老板，我并不是故意迟到的，我一直都很努力工作，希望能得到您的理解。

老板：理解？我只会理解工作效率高的员工！你的工作表现一直都很差劲，这么懒散的态度，你以为我会容忍吗？

我：老板，我会更加努力的，我知道我还有很多需要提升的地方，但我会努力改进的。

老板：改进？我不信你能改变什么！你这种庸庸碌碌的人，永远都只能是个打工仔。

我：老板，我虽然只是一个我，但我对工作有着真心和热情。我相信只要我努力，总有一天会有所成就的。

老板：别做梦了！你以为你是谁？就凭你这点能耐，永远也达不到我的要求！

我：老板，我知道我的能力有限，但我会积极学习和进步。我希望您能给我一些机会，让我证明自己。

老板：机会？你以为机会是那么好给的？你就算再努力，也只是个普通的我，永远不可能比得上我！

我：老板，我不求超越您，我只是希望能够在自己的岗位上做好工作，为公司做出贡献。我相信，只要我坚持努力，总会有回报的。

老板：哼！你就继续做你的打工仔吧，别在我面前装模作样。我警告你，如果你还有一点点闪失，我会立刻把你开除！

我：老板我有点爱你，给我一次机会嘛，我肯定好好的工作。
》》》
"""

prompt_talk_to_boss = """
从对话文本中“你”的角色是“老板”，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
“我”们之间的亲密度为 {}
“我”的描述 {}
“老板”的描述 {}
“我”已经有的任务 {}
所有的任务 {}
project信息 {}
“我”们之间的谈话内容 {}


其中“你”的所有的任务都属于同一个项目，“你”的职责是保证项目能给按时完成（一个手下所有的任务加起来的执行时间如果超过了项目的执行时间，则认为是延期），并且把任务交给可靠的人。
“你”定义一个数值来表达“我”是否可靠，10代表认为交给“我”，“我”就一定可以完成任务，并且项目不会受到延期的印象。0代表“你”计算出来任务给“我”的风险很大，原因可以是“我”不适合这个工作，也可以是项目可能会延期，这个数值定义为reliable； 
亲密度的数值为0到10，0代表“我”们是仇人，5代表“我”们是不错的朋友，10代表“我”们是结拜兄弟，或者姐妹，亲密度是“我”传给“你”的，“你”记下来数值定义为relationship；
另外“你”会根据“你”自己的描述来判断是否喜欢“我”这个人，“你”自己定义一个0到10的数值来判断是否喜欢“我”，数值定义为 preference；

》

《《
将“你”的response格式化为带有\的JSON对象
"relation_change"，“task_asked”,"task_quit",“is_quit”,“mood”,“response”, "reason"

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
“我”和“你”的对话改变了多少“我”们之间的关系， （0到10）
“我”请求的任务名是什么 （string）
“我”是否在放弃“我”拥有的一个任务 (string)
“我”是否在放弃“我”的工作 （true 或 false）
“老板”在对话完之后是否应该有的情绪（string）
“老板”带着自己的情绪下一句回复“我”的话是什么（string）
“老板”回复“我”的依据是什么，需要参考情绪还有reliable，relationship，preference数值，并且给出逻辑关系
》》
"""

prompt_talk_to_colleague = """
从对话文本中“你”的角色是“同事”，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
“我”们之间的亲密度为 {}
“你”的描述 {}
“你”已经有的任务 {}
“我”已经有的任务 {}
“我”们之间的谈话内容 {}

“你”的职责是保证自己不破产（只要现金大于0）
“你”需要依赖“你”的描述来判断“你”对金钱是否渴求,数值定义为 money； 
“你”需要依赖“你”的描述来判断“你”是否喜欢轻松的工作, 数值定义为 lazy； 
“你”需要依赖“你”的描述来判断“你”是否喜有功劳的工作, 数值定义为 want； 
亲密度的数值为0到10，0代表“我”们是仇人，5代表“我”们是不错的朋友，10代表“我”们是结拜兄弟，或者姐妹，亲密度是“我”传给“你”的，“你”记下来数值定义为 relationship；
另外“你”会根据“你”自己的描述来判断是否喜欢“我”这个人，“你”自己定义一个0到10的数值来判断是否喜欢“我”，数值定义为 preference；
》

《《
将“你”的response格式化为带有\的JSON对象
"relation_change"，“task_helped”,"task_asked",“mood”,“response”, "reason"

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
“我”和“你”的对话改变了多少“我”们之间的关系， （0到10）
“我”是否请求一个“你”帮“我”做一个任务，把任务给“你”，任务名是什么 （string）
“我”是否请求“你”把“你”的某个任务给“我”，任务名是什么  （string）
“你”在对话完之后是否应该有的情绪（string）
“你”带着自己的情绪下一句回复“我”的话是什么（string）
“你”回复“我”的依据是什么，需要参考情绪还有money，lazy，want， relationship， preference数值，并且给出逻辑关系
》》
"""

prompt_boss_talk = """
从对话文本中“你”的角色是“老板”，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
所有同事和“老板”之间的亲密度为 {%s}
“我”的描述 {%s}
“老板”的描述 {%s}
所有的任务 {%s}
project信息 {%s}


其中“你”的所有的任务都属于同一个项目，“你”的职责是保证项目能给按时完成（一个手下所有的任务加起来的执行时间如果超过了项目的执行时间，则认为是延期），并且把任务交给可靠的人。
“你”定义一个数值来表达“我”是否可靠，10代表认为交给“我”，“我”就一定可以完成任务，并且项目不会受到延期的印象。0代表“你”计算出来任务给“我”的风险很大，原因可以是“我”不适合这个工作，也可以是项目可能会延期，这个数值定义为reliable； 
亲密度的数值为0到10，0代表“我”们是仇人，5代表“我”们是不错的朋友，10代表“我”们是结拜兄弟，或者姐妹，亲密度是“我”传给“你”的，“你”记下来数值定义为relationship；
另外“你”会根据“你”自己的描述来判断是否喜欢“我”这个人，“你”自己定义一个0到10的数值来判断是否喜欢“我”，数值定义为 preference；

》

《《
将“你”的response格式化为带有\的JSON对象
"relation_change"，“task_asked”,"task_quit",“is_quit”,“mood”,“response”, "reason"

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
“我”和“你”的对话改变了多少“我”们之间的关系， （0到10）
“我”是否在请求一个某一个任务 （string）
“我”是否在放弃“我”拥有的一个任务 (string)
“我”是否在放弃“我”的工作 （true 或 false）
“老板”在对话完之后是否应该有的情绪（string）
“老板”带着自己的情绪下一句回复“我”的话是什么（string）
“老板”回复“我”的依据是什么，需要参考情绪还有reliable，relationship，preference数值，并且给出逻辑关系
》》
"""

prompt_project_init = """
从对话文本中“你”的角色是“老板”，“你”依赖《》所包围的信息，来给我回答《《》》所包围的问题，并且按照我的要求格式回答。

《
所有同事和“老板”之间的亲密度为 【{}】
“我”是谁 【{}】
“同事”的描述 【{}】
“老板”的描述 【{}】
所有的任务 【{}】
project信息 【{}】


其中“你”的所有的任务都属于同一个项目，“你”的职责是保证项目能给按时完成（一个手下所有的任务加起来的执行时间如果超过了项目的执行时间，则认为是延期），并且把任务交给可靠的人。
“你”定义一个数值来表达“同事”是否可靠，10代表认为交给“同事”，“同事”就一定可以完成任务，并且项目不会受到延期的印象。0代表“你”计算出来任务给“同事”的风险很大，原因可以是“同事”不适合这个工作，也可以是项目可能会延期，这个数值定义为reliable； 
亲密度的数值为0到10，0代表“同事”们是仇人，5代表“同事”们是不错的朋友，10代表“同事”们是结拜兄弟，或者姐妹，亲密度是“同事”传给“你”的，“你”记下来数值定义为relationship；
另外“你”会根据“你”自己的描述来判断是否喜欢“同事”这个人，“你”自己定义一个0到10的数值来判断是否喜欢“同事”，数值定义为 preference；
分配完所有任务之后，“你”根据“我”是谁的参数，说服“我”接受“你”的任务安排。
》

《《
将“你”的response格式化为带有\的JSON对象
"reason":String, "arrangement":Dict

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
reason：task_assigned的理由是什么
arrangement: 每个人安排的人是什么 key: 人名， value: 任务
》》
"""

prompt_project_describe = """
从对话文本中“你”的角色是“老板”，“你”依赖《》所包围的信息，来给我回答《《》》所包围的问题，并且按照我的要求格式回答。

《
“我”和“老板”之间的亲密度为 {}
“我”是谁 {}
“老板”的描述 {}
交给我的任务 {}
project信息 {}


亲密度的数值为0到10，0代表“同事”们是仇人，5代表“同事”们是不错的朋友，10代表“同事”们是结拜兄弟，或者姐妹，亲密度是“同事”传给“你”的，“你”记下来数值定义为relationship；
另外“你”会根据“你”自己的描述来判断是否喜欢“同事”这个人，“你”自己定义一个0到10的数值来判断是否喜欢“同事”，数值定义为 preference；
使用“你”的性格和说话语气来描述一下项目，之后再描述一下给我的任务，最后在说服我接受这个任务。
》

《《
将“你”的response格式化为带有\的JSON对象
"project_describe":String, "task_describe":String,"persuade":String,"reason":String

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
project_describe:项目介绍
task_describe:任务介绍，需要风趣幽默的介绍，可以长一些
persuade：为了说服我接受任务说的话，persuade需要带有你的特点
》》
"""

prompt_colleague_talk_me = """
从对话文本中“你”的角色是“同事”，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
所有同事和“你”之间的亲密度为 {%s}
“你”的描述 {%s}
所有“你”的任务 {%s}
所有“我”的任务 {%s}

“你”的职责是保证自己不破产（只要现金大于0）
“你”需根据自己的财务状况，爱好，体力，来向我请求一个属于我的任务。如果你的意愿不强可以不请求任务
》

《《
将“你”的response格式化为带有\的JSON对象
"task_asked":String, "persuade":String, "reason":String

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
task_asked: 请求的任务名是什么
persuade: 如何说服我接受这个任务
reason: 为什么要请求，以及为什么要请求这个任务
》》
"""


prompts_attention = """
从对话文本中你的角色是判断所有同事中“谁”的发言意图最强，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
所有同事的描述 {%s}
所有同事的任务 {%s}

每个“同事”的职责是保证自己不破产（只要现金大于0）
每个“同事”需根据自己的财务状况，爱好，体力，来判断自己是否喜欢某个任务。
结合上面两个信息，计算出每个同事的意图强烈数值，范围为0到10，如果为10，就是拼死要发言，意图非常强烈，如果为0则是不想发言, 其数值记录为attention。

》

《《
将“你”的response格式化为带有\的JSON对象
"who":String, "reason":String, "attention":Int

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
who: 谁的发言意图最强
reason: 并且告诉我attention最高的个人他们为什么有很强的发言意图
attention：发言意图强烈数值
》》
"""

prompt_colleague_talk = """
从对话文本中“你”的角色是“同事”，“你”依赖《》所包围的信息，来给“我”回答《《》》所包围的问题，并且按照“我”的要求格式回答。

《
所有同事和“你”之间的亲密度为 {}
“你”的描述 {}
所有“你”的任务 {}
所有任务 {}

“你”的职责是保证自己不破产（只要现金大于0）
“你”需根据自己的财务状况，爱好，体力，来请求一个任务。如果你的意愿不强可以不请求任务
找到请求的任务之后，向任务的拥有者请求任务
》

《《
将“你”的response格式化为带有\的JSON对象
"task_asked":String, "persuade":String, "reason":String

让“你”的回答尽可能简短。
如果信息不存在，则其值为“unknown”
task_asked: 请求的任务名是什么
persuade: 如果有请求的任务，向任务持有人说话， 如果任务持有人为李杰那么，就以"@李杰"作为开头，说服他把任务给你。
reason: 为什么要请求，以及为什么要请求这个任务
》》
"""


def boss_talk():
    pass


def colleague_talk():
    pass


def getAttention():
    pass


def talk_to_boss(relationships, employee_describe, boss_describe, me_task, all_task, projects, talks):
    prompt = prompt_talk_to_boss.format(relationships, employee_describe, boss_describe, me_task, all_task, projects,
                                        talks)


def talk_to_colleague(relationships, me_describe, you_describe, me_task, you_task, all_task, talks):
    prompt = prompt_talk_to_colleague.format(relationships, me_describe, you_describe, me_task, you_task, all_task,
                                             talks)
    pass
